// node  服务器

const express = require('express')
const Vue = require('vue')

/**创建 express实例 和 vue实例 */
const app = express()
const page = new Vue({ // 将来用渲染器渲染page得到html内容
    template: '<div><h1>Hello Vue  SSR </h1></div>'
})

/**创建一个渲染器 */
const renderer = require('vue-server-renderer').createRenderer()

app.get('/', async (req, res) => {
    // .renderToString(vue的实例)： 异步生成html的内容
    const html = await renderer.renderToString(page)
    try {
        res.send(html)
    } catch (err) {
        res.status(500).send('服务器正忙。。。')
    }
})

// 启动服务器监听
app.listen(3000, () => {
    console.log('服务器启动成功')
})